package projectmanagement.managementtool.TaskServices;
/**
 * @author Zhimolokhov Oleg
 *
 */
import projectmanagement.models.Project;
import projectmanagement.models.Task;

public interface TaskService {
    /**
     * This method is attempting to create a new task
     * and add it to the existing project
     *
     * @param estimationOfTask an approximate estimated time
     * @param descriptionOfTask detailed description of created task
     * @return
     */
    public Task createTask(int estimationOfTask, String descriptionOfTask);

    /**
     * This method displays detailed information about the created task.
     *
     * @param task an instance of Task
     */
    public void showTaskDetails(Task task);

    /**
     * This method searches for the task by its ID-number
     * and returns it
     *
     * @param p an instance of Project
     * @param taskId an ID-number of the required task
     * @return required task
     */
    public Task getTaskById(Project p, int taskId);
}